package sv.ues.fia.adminperfildocentes;

import java.util.ArrayList;
import java.util.HashMap;

import sv.ues.fia.adminperfildocentes.adapter.ListIdiomaDocenteAdapter;
import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.widget.EditText;
import android.widget.ListView;

public class IdiomaDocentePerfilActivity extends Activity {
	
	ListIdiomaDocenteAdapter mAdapter;
	ControlDB BDhelper;
	ListView lvIdiomaDocente;
	EditText editbuscar;
	String id;
	ArrayList<HashMap<String, String>> array_sort = new ArrayList<HashMap<String, String>>();
	ArrayList<HashMap<String, String>> listarIdiomaDocente = new ArrayList<HashMap<String, String>>();
	int textlength =0;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_idioma_docente_perfil);
BDhelper = new ControlDB(this);
		
		Bundle bundle = getIntent().getExtras();
		id = bundle.getString("idDocente");
		
		listarIdiomaDocente = BDhelper.listarIdiomaDocente(id);
		lvIdiomaDocente = (ListView) findViewById(R.id.listviewidiomadocente);
		
		mAdapter = new ListIdiomaDocenteAdapter(this,listarIdiomaDocente);
		// Establecemos el adapter
		lvIdiomaDocente.setAdapter(mAdapter);
			
		// registramos el menu
		registerForContextMenu(lvIdiomaDocente);
		
		//filtrado con el edit
		editbuscar = (EditText) findViewById(R.id.editBusqueda);
		editbuscar.addTextChangedListener(new TextWatcher() {
			@Override
		    public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) {
		        // When user changed the Text
				 textlength = editbuscar.getText().length();
	             array_sort.clear();
	                
	                for (int i = 0; i < listarIdiomaDocente.size(); i++) {
	                	String itemIdioma = mAdapter.getItem(i);
	                	String itemIdidioma = String.valueOf(mAdapter.getItemId(i));
	                	String itemHabla = mAdapter.getItemHabla(i);
	                	String itemLectura = mAdapter.getItemLectura(i);
	                	String itemEscritura = mAdapter.getItemEscritura(i);
	                	int longitud = itemIdioma.length();
	                    if (textlength <= longitud) {
	                        if (editbuscar.getText().toString().equalsIgnoreCase((String) itemIdioma.subSequence(0, textlength))) {
	                        	HashMap<String, String> actual = new HashMap<String, String>();
	                        	actual.put("ididioma", itemIdidioma);
	                			actual.put("nombre", itemIdioma);
	                			actual.put("porcentaje_habla", itemHabla);
	                			actual.put("porcentaje_lectura", itemLectura);
	                			actual.put("porcentaje_escritura", itemEscritura);
	                            array_sort.add(actual);
	                        }
	                    }
	                }
	                 
	                lvIdiomaDocente.setAdapter(new  ListIdiomaDocenteAdapter(IdiomaDocentePerfilActivity.this, array_sort));
		    }
		    @Override
		    public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
		            int arg3) { }
		    @Override
		    public void afterTextChanged(Editable arg0) {}
		  });
	}


}
